#ifndef _NODE_H_
#define _NODE_H_

#include "AEE.h"
#include "AEEFile.h"
#include "AEEIImage.h"

typedef enum 
{
	NodeTypeAction,
		NodeTypeFile,
}NodeType;

typedef enum 
{
	ImageLoadFailed = 0,
		ImageLoadPending,
		ImageLoadInProgress,
		ImageLoadSuccess,
} ImageLoadStage ;

typedef struct
{
	NodeType type;
	int index;
	AECHAR nodeName[AEE_MAX_FILE_NAME];
} NodeGeneric ;

typedef struct
{
	NodeGeneric base;
	uint16 id;
} NodeAction;

typedef struct
{
	NodeGeneric base;
	
	AEEFileInfo fi;
	
	//async image loading
	IImage *image;
	ImageLoadStage loadStage;
	AEEImageInfo imageInfo;
	int imageLoadError;
	
}  NodeFile ;

#endif //_NODE_H_